From 98c61684b01e281f7eda2abb22929ea84fc6e9b8 Mon Sep 17 00:00:00 2001
From: Daniel Carl <danielcarl@gmx.de>
Date: Fri, 27 Sep 2013 23:51:28 +0200
Subject: [PATCH] Don't allow to paste multline content from clipboard.

If the pasted contents leads to multiple input box lines, we remove everything
out of the buffer except of the first line.
---
 src/ex.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/src/ex.c b/src/ex.c
index 0220bbd..afc17cc 100644
--- a/src/ex.c
+++ b/src/ex.c
@@ -285,6 +285,18 @@ VbResult ex_keypress(unsigned int key)
 void ex_input_changed(const char *text)
 {
     gboolean forward = false;
+    GtkTextIter start, end;
+    GtkTextBuffer *buffer = vb.gui.buffer;
+
+    if (gtk_text_buffer_get_line_count(buffer) > 1) {
+        /* remove everething from the buffer, except of the first line */
+        gtk_text_buffer_get_iter_at_line(buffer, &start, 0);
+        if (gtk_text_iter_forward_to_line_end(&start)) {
+            gtk_text_buffer_get_end_iter(buffer, &end);
+            gtk_text_buffer_delete(buffer, &start, &end);
+        }
+    }
+
     switch (*text) {
         case ';':
             hints_create(text);
-- 
2.20.1